From: Giovanni Campagna Date: Wed, 25 Sep 2013 12:02:56 +0000 (+0200) Subject: SystemMenu: wait for a completed paint before switching VT X-Git-Tag: archive/raspbian/50.5-1+rpi1~1^2~1013^2^2~3329 X-Git-Url: https://dgit.raspbian.org/%22http://www.example.com/cgi/%22/%22http:/www.example.com/cgi/%22?a=commitdiff_plain;h=3b1b9f589bcbf1adfcb614c23eca0b91a4b615f8;p=gnome-shell.git SystemMenu: wait for a completed paint before switching VT Activating the GDM login screen switches VT and causes X to freeze event processing (because it lost the drm master), so must make sure to have painted the lock screen at least once before proceeding, or the user can go back and see the unlocked desktop. https://bugzilla.gnome.org/show_bug.cgi?id=708051 --- diff --git a/js/ui/status/system.js b/js/ui/status/system.js index c319b0950..b320c7763 100644 --- a/js/ui/status/system.js +++ b/js/ui/status/system.js @@ -372,7 +372,11 @@ const Indicator = new Lang.Class({ Main.overview.hide(); if (Main.screenShield) Main.screenShield.lock(false); - Gdm.goto_login_session_sync(null); + + Clutter.threads_add_repaint_func_full(Clutter.RepaintFlags.POST_PAINT, function() { + Gdm.goto_login_session_sync(null); + return false; + }); }, _onQuitSessionActivate: function() {